package com.ruoyi.crayon.service.impl;

import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.crayon.common.enums.BizStatus;
import com.ruoyi.crayon.domain.CrayonBiz;
import com.ruoyi.crayon.mapper.CrayonBizMapper;
import com.ruoyi.crayon.service.ICrayonBizService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 业务组件Service业务层处理
 * 
 * @author ruoyi
 * @date 2023-10-11
 */
@Service
public class CrayonBizServiceImpl implements ICrayonBizService 
{
    @Autowired
    private CrayonBizMapper crayonBizMapper;

    /**
     * 查询业务组件
     * 
     * @param bizId 业务组件主键
     * @return 业务组件
     */
    @Override
    public CrayonBiz selectCrayonBizByBizId(Long bizId)
    {
        return crayonBizMapper.selectCrayonBizByBizId(bizId);
    }

    /**
     * 查询业务组件列表
     * 
     * @param crayonBiz 业务组件
     * @return 业务组件
     */
    @Override
    public List<CrayonBiz> selectCrayonBizList(CrayonBiz crayonBiz)
    {
        return crayonBizMapper.selectCrayonBizList(crayonBiz);
    }

    /**
     * 新增业务组件
     * 
     * @param crayonBiz 业务组件
     * @return 结果
     */
    @Override
    public int insertCrayonBiz(CrayonBiz crayonBiz)
    {
        crayonBiz.setBizStatus(BizStatus.STOP.getCode());
        crayonBiz.setCreateTime(DateUtils.getNowDate());
        return crayonBizMapper.insertCrayonBiz(crayonBiz);
    }

    /**
     * 修改业务组件
     * 
     * @param crayonBiz 业务组件
     * @return 结果
     */
    @Override
    public int updateCrayonBiz(CrayonBiz crayonBiz)
    {
        crayonBiz.setUpdateTime(DateUtils.getNowDate());
        return crayonBizMapper.updateCrayonBiz(crayonBiz);
    }

    /**
     * 批量删除业务组件
     * 
     * @param bizIds 需要删除的业务组件主键
     * @return 结果
     */
    @Override
    public int deleteCrayonBizByBizIds(Long[] bizIds)
    {
        return crayonBizMapper.deleteCrayonBizByBizIds(bizIds);
    }

    /**
     * 删除业务组件信息
     * 
     * @param bizId 业务组件主键
     * @return 结果
     */
    @Override
    public int deleteCrayonBizByBizId(Long bizId)
    {
        return crayonBizMapper.deleteCrayonBizByBizId(bizId);
    }
}
